package ar.edu.caece.compiler.grammar.attributes;

import java.util.ArrayList;
import java.util.List;

public class ListaParametrosDeclaracionAttribute extends ListaParametrosAttribute {
	
	private List<DeclaracionParametro> declaracionParametro;
	private String id;
	
	public ListaParametrosDeclaracionAttribute() {
		declaracionParametro = new ArrayList<DeclaracionParametro>();
	}
	
	public List<DeclaracionParametro> getListaParametros() {
		return declaracionParametro;
	}

	public void setListaParametros(
			List<DeclaracionParametro> listaParametros) {
		this.declaracionParametro = listaParametros;
	}
	
	public void addParametro(DeclaracionParametro parametro) {
		declaracionParametro.add(parametro);
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getId() {
		return id;
	}
	
	public List<StringAttribute> getParametros() {
		List<StringAttribute> attributes = new ArrayList<StringAttribute>();
		for(DeclaracionParametro d : declaracionParametro) {
			attributes.add(new StringAttribute(d.getNombreVariable()));
		}
		return attributes;
	}

	public boolean isVacia() {
		return declaracionParametro.isEmpty();
	}
}
